<?php
namespace app\index\controller;

use AuthModel\ModelFactory;
use SimpleFactory\CashContext;
use SimpleFactory\CashFactory;
use SimpleFactory\CashNormal;
use SimpleFactory\CashReturn;
use Strategy\ConcreteStrategyA;
use Strategy\Context;

class Index
{
    public function index()
    {
        return '<style type="text/css">*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} a{color:#2E5CD5;cursor: pointer;text-decoration: none} a:hover{text-decoration:underline; } body{ background: #fff; font-family: "Century Gothic","Microsoft yahei"; color: #333;font-size:18px;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.6em; font-size: 42px }</style><div style="padding: 24px 48px;"> <h1>:) </h1><p> ThinkPHP V5.1<br/><span style="font-size:30px">12载初心不改（2006-2018） - 你值得信赖的PHP框架</span></p></div><script type="text/javascript" src="https://tajs.qq.com/stats?sId=64890268" charset="UTF-8"></script><script type="text/javascript" src="https://e.topthink.com/Public/static/client.js"></script><think id="eab4b9f840753f8e7"></think>';
    }

    public function hello($name = 'ThinkPHP5')
    {
        return 'hello,' . $name;
    }

    public function test()
    {
        $cash = new CashFactory();
        $cs = $cash->createCashAccept(3);
        $money = $cs->acceptCash(200);
        return $money;
    }

    public function test1()
    {
        $model = new ModelFactory();
        $model_return = $model->getResult('1');
        $result = $model_return->getReturn();
        return $result;
    }

    public function test2()
    {
        $context = new Context(new ConcreteStrategyA());
        return $context->ContextInterface();
    }

    public function test3()
    {
        $context = new CashContext(new CashReturn(300, 100));

        return $context->getResult(400);
    }

    public function test4()
    {
        $string = "hello_world_thinkphp";
        $string = str_replace("_", " ", $string);
        $string = ucwords($string);
        return str_replace(" ", "", $string);
    }
}
